Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- type system



  Be careful about nil check on interface in GoLang

nil check is frequently seen in GoLang code especially for error check since GoLang's special error handling convention. In most cases, nil check is straight forward, but in interface case, it's a bit different and special care needs to be taken. Take a look at below code snippet and guess what the output will be. package main import ( "bytes" "fmt" "io" ) func check(w io.Writer) { if w != nil { fmt.Println("w is not nil") } fmt.Printf("w is %+v\n", w) } func main() { var b *bytes.B...

   INTERFACE,GOLANG,NIL CHECK,NIL TYPE,NIL VALUE     2019-04-06 07:47:07

  My favorite quotes from "The design and evolution of C++"

"The design and evolution of C++" is a book written by the inventor of C++  Bjarne stroustrup. In this book, Bjarne stroustrup presents the definitive insider's guide to the design and development of the C++ programming language. Without ommitting critical details or getting bogged down in technicalities, Stroustrup presents his unique insights into the decisions that shaped C++. In this book, some statements are very impressive. They are concise but convey much information. Here I summariz...

   C++,statements,type system,compatibility     2012-07-16 10:58:10

  template function in class in C++

We can define template function in a class, but one thing we should pay attention to is that the member function template definition (in addition to the declaration) should be in the header file, not the cpp, though it does not have to be in the body of the class declaration itself.Example //Sorter.h#pragma onceclass Sorter{public:    Sorter(void);    ~Sorter(void);    template <class type> static void qsort(type arr[],int start,int end);};templ...

   C++,template function,class,definition,d     2011-08-07 09:39:56

  Features of Google Android 4.1 Jelly Bean

In today's Google IO 2012 in San Francisco, Google announced its new Android system Android 4.1 Jelly Bean. It's a whole new Android OS and many new features are added to it. Let's check out what new features are added to Jelly Bean.1.  Projector ButterIt uses VSync and Tripple buffering to improve the interactivity experience and increase frame rate. It makes Jelly Bean the fastest and smoothest Android ever2. New home screenYou can customize the home screen. You can re-size the home scree...

   Android, Google IO, Android 4.1, Kelly Bean     2012-06-27 12:49:49

  Jelly Bean becomes the most popular Android OS

Google released the latest Android usage stats on Monday. Jelly Bean becomes the most popular Android OS for the first time. It takes 37.9% Android market share(32.3% from 4.1.x and 5.6% from 4.2.x). Ginegerbread is at the second place and it has 34.1% Android market share. This is a good news to many Android developers as they can use many new features provided in the new system if there are more and more users are using the new OS. Also if Google wants to attract news users, they have to enco...

   Android,Jelly Bean,Usage     2013-07-09 04:52:28

  Understanding database, instance and schema in Oracle database

Oracle database is the most popular database system among enterprises. To start working on Oracle database, some concepts must be understood first. They include database, instance, schema and user etc. And among these concepts, some have different meanings from those in other database systems such as MS SQL, MySQL, DB2. On the web, there are already some good posts which explain different concepts such as Ask Tom's database vs instances, Difference between database vs user vs schema. In this pos...

   DIFFERENCE,DATABASE,ORACLE DATABASE,INSTANCE,SCHEMA,USER     2016-12-14 23:30:56

  Different types of keystore in Java -- DKS

Domain KeyStore(DKS) is a keystore of keystore. It abstracts a collection of keystores that are presented as a single logical keystore. Itself is actually not a keystore. This new keystore type is introduced in Java 8. There is a new class DomainLoadStoreParameter which closely relates to DKS. To load different keystores into the single logical keystore, some configuration is needed. Here is the format of the configuration for grouping different keystores. domain [ ...] { keystore [ ....

   Java,keystore,DKS,tutorial     2015-01-20 02:27:27

  Mozilla releases a web identity system : Persona

Now almost every website requires the user to register, there are many benefits of registration for a website, such as retaining users, accommodating discussions, providing customized content and so on.But there is too much trouble if each site requires registration, right?Of course, users can also have their own way, for those less important sites, for example, using a unified user name, password and email so that you only need to remember one account. Then, we also see some advanced methods em...

   Mozilla,Persona,Security,ID     2012-09-28 12:02:25

  Let browser prompt for storing password when doing AJAX login

In Web 2.0 era, more and more web applications are using AJAX to replace the traditional HTML form element to perform user login. This usually provides a better user experience than form submission. But it also brings a side effect to the end users. That is the browser will not prompt the user whether s/he wants to save the password so that s/he no needs to enter the username/password again when visiting the same site next time. Below is the code snippet which does the AJAX login.  <scri...

   AJAX,Browser,Login,Password     2015-06-04 10:02:46

  Hexadecimal and long in Java

Today I encountered a hexadecimal operation problem when I was implementing a bit reverse function for integer type. Basically in the implementation, there is an operation which is to do the bit operation & between one long integer and a hexadecimal number 0x00000000FFFFFFFFF. I was expecting that the high 32 bits of the long integer will be zeroed. But unfortunately I didn't get the expected result. The basic implementation is: long num=0x00F0_0000; num = (num>>16) | (num<<16); ...

   Hexadecimal,long,Java,bitwise operation     2014-06-18 23:44:32